<?php
//通义灵码测试
//编写一个生成随机生成订单号的函数
function get_order_sn() {
    // 使用microtime(true)获取更高精度的时间戳，确保更精确的唯一性
    $timestamp = microtime(true);
    // 分离秒和微秒部分，确保整数部分用于订单号，微秒部分用于进一步增加唯一性
    $seconds = (int) $timestamp;
    $microseconds = (int) (($timestamp - $seconds) * 1000000);

    // 使用random_int生成更安全的随机数
    $random_part = str_pad(random_int(1000, 9999), 4, '0', STR_PAD_LEFT);

    // 组合订单号，保留原有格式：年月日时分秒+四位随机数
    $order_sn = date('YmdHis', $seconds) . $random_part . $microseconds;

    return $order_sn;
}

echo get_order_sn();
